package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.TableName;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

/**
 * 用户实体类
 * 对应表：user
 */
@Data
@TableName("user")
public class User {
    /**
     * 用户ID（主键）
     * 对应表字段：id（INT，自增）
     */
    @TableId(type = IdType.AUTO) // 自增主键
    private Integer id;

    /**
     * 用户名
     * 对应表字段：username（VARCHAR(50)，非空，唯一）
     */
    @TableField("username")
    private String username;

    /**
     * 年龄
     * 对应表字段：age（TINYINT UNSIGNED，可为空）
     */
    @TableField("age")
    private Integer age; // 用Integer接收，支持null值

    /**
     * 性别
     * 对应表字段：gender（ENUM('male', 'female', 'other')，可为空）
     */
    @TableField("gender")
    private String gender; // 也可使用枚举类型，这里简化为String

    /**
     * 地址
     * 对应表字段：address（VARCHAR(255)，可为空）
     */
    @TableField("address")
    private String address;
}